﻿<?php
// 后台用户模块
class UserAction extends CommonAction {
	

	//自定义单一模块无须认证的方法
	public function _noAuth()
	{
		//默认方法index,getlist是模块认证后无须认证的
		if(in_array(ACTION_NAME,array('index','getlist','checkAccount','resetPwd'))) return true;
		else return false;
	}
	
	function _filter(&$map){
		 $map['id'] = array('egt',2);
		//$map['account'] = array('like',"%".$_POST['account']."%");
	}

	
	public function _before_index() {
		$this->_getButton();//工具栏按钮
	}
	
	// 检查帐号
	public function checkAccount() {
        if(!preg_match('/^[a-z]\w{4,}$/i',$_POST['account'])) {
            $this->error( '用户名必须是字母，且5位以上！');
        }
		$User = M("User");
        // 检测用户名是否冲突
        $name  =  $_REQUEST['account'];
        $result  =  $User->getByAccount($name);
        if($result) {
        	$this->error('该用户名已经存在！');
        }else {
           	$this->success('该用户名可以使用！');
        }
    }

	// 插入数据
	public function add() {
		
		if (!$this->isPost()){  //get请求,显示编辑页面
			$this->display();
		}
		else{
			$User	 =	 D("User");
			if(!$User->create()) {
				$this->error($User->getError());
			}else{
				// 写入帐号数据
				$result	 =	 $User->add();
				if($result) {
				//	$this->addRole($result);
					$this->success('用户添加成功！');
					
				}else{
					$this->error('用户添加失败！');
				}
			}
		}
	}

	protected function addRole($userId) {
		//新增用户自动加入相应权限组
		$RoleUser = M("RoleUser");
		$RoleUser->user_id	=	$userId;
        // 默认加入网站编辑组
        $RoleUser->role_id	=	3;
		$RoleUser->add();
	}

    //重置密码
    public function resetPwd()
    {
    	$id  =  $_POST['id'];
        $password = $_POST['password'];
        if(''== trim($password)) {
        	$this->error('密码不能为空！');
        }
        $User = M('User');
		$User->password	=	md5($password);
		$User->id			=	$id;
		$result	=	$User->save();
        if(false !== $result) {
            $this->success("密码修改为$password");
        }else {
        	$this->error('重置密码失败！');
        }
    }
}
?>